#pragma once
#include "../base_define.h"

namespace xBase
{
    namespace system
    {
        // NOTE: Keep these in order so callers can do things like
        // "if (xBase::system::GetVersion() >= xBase::system::VERSION_VISTA) ..."
        enum Version {
            VERSION_PRE_XP = 0,  // Not supported.
            VERSION_XP,
            VERSION_SERVER_2003, // Also includes XP Pro x64 and Server 2003 R2.
            VERSION_VISTA,       // Also includes Windows Server 2008.
            VERSION_WIN7,        // Also includes Windows Server 2008 R2.
            VERSION_WIN8,        // Also includes Windows Server 2012.
            VERSION_WIN_LAST,    // Indicates error condition.
        };

        BASE_API Version GetVersion();
    }
}
